hive存储过程HplSQL使用示例

您所在的位置:网站首页 hive declare声明变量 hive存储过程HplSQL使用示例

hive存储过程HplSQL使用示例

2023-05-27 16:58| 来源: 网络整理| 查看: 265

在Hive开发中,要实现全面的 ETL、报告、分析和数据挖掘流程,不仅需要 MapReduce、Spark 或 Tez 等分布式处理引擎, 还需要一种表达全面业务规则的方法。比如可能存在满足某个条件再执行的脚本,虽然Azkaban调度中可以实现,但并不灵活,这时HplSQL就派上用场了!

官网:http://www.hplsql.org/download

配置:https://www.cnblogs.com/guotianqi/p/8041636.html

HPL/SQL尽量支持所有广泛使用的过程语言的语法。您无需从头开始学习新的程序语言。这有助于开发新代码以及将现有代码库迁移到Hadoop。 虽然官网是这么描述的,但实际使用发现坑也很多,比如sql文中嵌入变量。下面是我的使用示例,包含动态传参、流程控制、变量定义赋值等。

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167CREATE PROCEDURE controller(--------------------------- 后推背包礼物->抽取 ------------------------------ 创建者:呼松涛 -- 创建时间:20211018 -- 上次修改:20211118 -- 目标表:dws_fin_goods_sna_d、dws_fin_user_goods_sna_d -- 对应存储过程:usp_auto_userGoods -- 备注:该作业存在IF判断,故使用存储过程。 ------------------------------------------------------------------------------- @engine string)BEGINDECLARE var_date1 INT,var_date2 INT,var_date3 INT;SELECT var_date1 = NVL(MAX(dateKey),0) FROM mht.dwd_fin_user_package_sna_d; SELECT var_date2 = NVL(default.fn_datekey_add(var_date1,1),0); SELECT var_date3 = NVL(MAX(dateKey),0) FROM mht.dws_fin_user_goods_sna_d; print '变量var_date1 =' || var_date1 || '';print '变量var_date2 =' || var_date2 || '';print '变量var_date3 =' || var_date3 || '';IF var_date3


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3